home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2004 #11 / Amiga Plus CD - 2004 - No. 11.iso / AmiSoft / Comm / irc / BlackIRC-FW.lha / BlackIRC / Rexx / Friendlybot.birx next >
Text File  |  1999-01-31  |  3KB  |  101 lines

  1. /* Friendly bot script for BlackIRC
  2.    © 1998-99 by Felix Schwarz
  3. */
  4.  
  5. options results
  6. failat 21
  7.  
  8. 'ECHO <<FriendlyBot>>  2Welcome!!'
  9. 'ECHO <<FriendlyBot>>  2You just started FriendlyBot. o[0]It is watching what is'
  10. 'ECHO <<FriendlyBot>>  2told on IRC and telling rude people to stop being rude :)'
  11. 'ECHO <<FriendlyBot>>  2This can lead to quite funny discussions :-)'
  12. GETLASTLINE
  13. llorig=result
  14.  
  15. exit=0
  16.  
  17. rudelist=' '
  18.  
  19. REXXLINE ON
  20. REXXLINETEXT 'FriendlyBot'
  21.  
  22. DO WHILE exit=0
  23.         GETENTERLINE
  24.         action=result
  25.  
  26.         IF action='QUITBOT' THEN DO
  27.          exit=1
  28.         END
  29.  
  30.         oldllorig=llorig
  31.         GETLASTLINE
  32.         llorig=result
  33.  
  34.         IF llorig~=oldllorig THEN DO
  35.                 rude=0
  36.                 ll=Upper(llorig)
  37.  
  38.                 GETMYNICK
  39.                 mynick=result
  40.  
  41.                 /* Say rude people, that they are rude ..*/
  42.                 IF INDEX(ll,'PRIVMSG')>0 THEN DO
  43.                         /* Check for rude expressions */
  44.                         IF INDEX(ll,'SUCK')>0       THEN rude=1
  45.                         IF INDEX(ll,'ASSHOLE')>0    THEN rude=1
  46.                         IF INDEX(ll,'IDIOT')>0      THEN rude=1
  47.                         IF INDEX(ll,'SHIT')>0       THEN rude=1
  48.                         IF INDEX(ll,'BILL GATES')>0 THEN rude=1
  49.                         IF INDEX(ll,'SUCKER')>0     THEN rude=1
  50.                         IF INDEX(ll,'CRAP')>0       THEN rude=1
  51.                         IF INDEX(ll,'FUCK')>0       THEN rude=1
  52.                         IF rude=1 THEN DO
  53.                                 GETLASTNICK
  54.                                 fnick=result
  55.                                 'SAY /msg 'fnick' Hey 'fnick', don`t use such rude words!! (A message by FriendlyBot :)'
  56.  
  57.                                 rudelist=rudelist' 'fnick
  58.  
  59.                                 'COUNTUSAGE 'fnick' 'rudelist
  60.                                 times=result
  61.  
  62.                                 if times>5 then do
  63.                                         'SAY /KICK 'fnick' Stop insulting! (FriendlyBot)'
  64.                                 end
  65.                         END
  66.  
  67.                         IF INDEX(ll,Upper(mynick))>0 THEN DO
  68.                                 IF INDEX(ll,'#')=0 THEN DO
  69.                                         GETLASTNICK
  70.                                         fnick=result
  71.  
  72.                                         GETAWAYSTATE
  73.                                         ast=rc
  74.                                         IF ast=5 THEN DO
  75.                                                 'SAY /msg 'fnick' 'mynick' currently is away from keyboard but FriendlyBot is there for you :)'
  76.                                         END
  77.                                 END
  78.                         END
  79.                 END
  80.  
  81.                 /* Auto-greet feature */
  82.                 IF INDEX(llorig,'JOIN')>0 THEN DO
  83.                         GETLASTNICK
  84.                         fnick=result
  85.  
  86.                         tochan=DelStr(llorig,1,INDEX(llorig,":",7))
  87.  
  88.                         'SAY /msg 'tochan' Hi 'fnick' !'
  89.                 END
  90.         END
  91.  
  92.  
  93. END
  94.  
  95. REXXLINE OFF
  96.  
  97. 'ECHO <<FriendlyBot>> FriendlyBot quit..'
  98.  
  99. EXIT
  100.  
  101.